home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Resources / Chat & Communication / Digsby build 37 / digsby_setup.exe / lib / PIL / CurImagePlugin.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2008-10-13  |  2KB  |  49 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. __version__ = '0.1'
  5. import string
  6. import Image
  7. import BmpImagePlugin
  8.  
  9. def i16(c):
  10.     return ord(c[0]) + (ord(c[1]) << 8)
  11.  
  12.  
  13. def i32(c):
  14.     return ord(c[0]) + (ord(c[1]) << 8) + (ord(c[2]) << 16) + (ord(c[3]) << 24)
  15.  
  16.  
  17. def _accept(prefix):
  18.     return prefix[:4] == '\x00\x00\x02\x00'
  19.  
  20.  
  21. class CurImageFile(BmpImagePlugin.BmpImageFile):
  22.     format = 'CUR'
  23.     format_description = 'Windows Cursor'
  24.     
  25.     def _open(self):
  26.         offset = self.fp.tell()
  27.         s = self.fp.read(6)
  28.         if not _accept(s):
  29.             raise SyntaxError, 'not an CUR file'
  30.         
  31.         m = ''
  32.         for i in range(i16(s[4:])):
  33.             s = self.fp.read(16)
  34.             if not m:
  35.                 m = s
  36.                 continue
  37.             if ord(s[0]) > ord(m[0]) and ord(s[1]) > ord(m[1]):
  38.                 m = s
  39.                 continue
  40.         
  41.         self._bitmap(i32(m[12:]) + offset)
  42.         self.size = (self.size[0], self.size[1] / 2)
  43.         (d, e, o, a) = self.tile[0]
  44.         self.tile[0] = (d, (0, 0) + self.size, o, a)
  45.  
  46.  
  47. Image.register_open('CUR', CurImageFile, _accept)
  48. Image.register_extension('CUR', '.cur')
  49.